x86: tighten filter on ptwr_do_page_fault()
authorKeir Fraser <keir@xen.org>
Mon, 29 Nov 2010 14:40:55 +0000 (14:40 +0000)
committerKeir Fraser <keir@xen.org>
Mon, 29 Nov 2010 14:40:55 +0000 (14:40 +0000)
commit3604b2eafb379357ab63e6081e55ff18327ad07b
tree64cfde3718357dc3c516ce19bdbce1c21ce10a25
parentd4d2cb21138e5ac6c24e62ff7440d2846dc43a16
x86: tighten filter on ptwr_do_page_fault()

Even not-so-recent Linux may, due to post-2.6.18 changes to the
process creation code, cause quite a number (depending on environment
and argument size) of faulting accesses to user space originating from
kernel mode. Generally those happen for non-present pages and would
lead to a nested page fault from guest_get_eff_l1e(). They can be
avoided by checking for PFEC_page_present as long as the guest isn't
running on shadow page tables.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Signed-off-by: Keir Fraser <keir@xen.org>
xen/arch/x86/traps.c